from1(X) -> cons2(X, from1(s1(X)))
head1(cons2(X, XS)) -> X
2nd1(cons2(X, XS)) -> head1(XS)
take2(0, XS) -> nil
take2(s1(N), cons2(X, XS)) -> cons2(X, take2(N, XS))
sel2(0, cons2(X, XS)) -> X
sel2(s1(N), cons2(X, XS)) -> sel2(N, XS)
↳ QTRS
↳ DependencyPairsProof
from1(X) -> cons2(X, from1(s1(X)))
head1(cons2(X, XS)) -> X
2nd1(cons2(X, XS)) -> head1(XS)
take2(0, XS) -> nil
take2(s1(N), cons2(X, XS)) -> cons2(X, take2(N, XS))
sel2(0, cons2(X, XS)) -> X
sel2(s1(N), cons2(X, XS)) -> sel2(N, XS)
SEL2(s1(N), cons2(X, XS)) -> SEL2(N, XS)
TAKE2(s1(N), cons2(X, XS)) -> TAKE2(N, XS)
2ND1(cons2(X, XS)) -> HEAD1(XS)
FROM1(X) -> FROM1(s1(X))
from1(X) -> cons2(X, from1(s1(X)))
head1(cons2(X, XS)) -> X
2nd1(cons2(X, XS)) -> head1(XS)
take2(0, XS) -> nil
take2(s1(N), cons2(X, XS)) -> cons2(X, take2(N, XS))
sel2(0, cons2(X, XS)) -> X
sel2(s1(N), cons2(X, XS)) -> sel2(N, XS)
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
SEL2(s1(N), cons2(X, XS)) -> SEL2(N, XS)
TAKE2(s1(N), cons2(X, XS)) -> TAKE2(N, XS)
2ND1(cons2(X, XS)) -> HEAD1(XS)
FROM1(X) -> FROM1(s1(X))
from1(X) -> cons2(X, from1(s1(X)))
head1(cons2(X, XS)) -> X
2nd1(cons2(X, XS)) -> head1(XS)
take2(0, XS) -> nil
take2(s1(N), cons2(X, XS)) -> cons2(X, take2(N, XS))
sel2(0, cons2(X, XS)) -> X
sel2(s1(N), cons2(X, XS)) -> sel2(N, XS)
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ QDP
SEL2(s1(N), cons2(X, XS)) -> SEL2(N, XS)
from1(X) -> cons2(X, from1(s1(X)))
head1(cons2(X, XS)) -> X
2nd1(cons2(X, XS)) -> head1(XS)
take2(0, XS) -> nil
take2(s1(N), cons2(X, XS)) -> cons2(X, take2(N, XS))
sel2(0, cons2(X, XS)) -> X
sel2(s1(N), cons2(X, XS)) -> sel2(N, XS)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
SEL2(s1(N), cons2(X, XS)) -> SEL2(N, XS)
POL(SEL2(x1, x2)) = x1 + 2·x1·x2
POL(cons2(x1, x2)) = x2
POL(s1(x1)) = 2 + x1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
↳ QDP
from1(X) -> cons2(X, from1(s1(X)))
head1(cons2(X, XS)) -> X
2nd1(cons2(X, XS)) -> head1(XS)
take2(0, XS) -> nil
take2(s1(N), cons2(X, XS)) -> cons2(X, take2(N, XS))
sel2(0, cons2(X, XS)) -> X
sel2(s1(N), cons2(X, XS)) -> sel2(N, XS)
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
TAKE2(s1(N), cons2(X, XS)) -> TAKE2(N, XS)
from1(X) -> cons2(X, from1(s1(X)))
head1(cons2(X, XS)) -> X
2nd1(cons2(X, XS)) -> head1(XS)
take2(0, XS) -> nil
take2(s1(N), cons2(X, XS)) -> cons2(X, take2(N, XS))
sel2(0, cons2(X, XS)) -> X
sel2(s1(N), cons2(X, XS)) -> sel2(N, XS)
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
TAKE2(s1(N), cons2(X, XS)) -> TAKE2(N, XS)
POL(TAKE2(x1, x2)) = x1 + 2·x1·x2
POL(cons2(x1, x2)) = x2
POL(s1(x1)) = 2 + x1
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
from1(X) -> cons2(X, from1(s1(X)))
head1(cons2(X, XS)) -> X
2nd1(cons2(X, XS)) -> head1(XS)
take2(0, XS) -> nil
take2(s1(N), cons2(X, XS)) -> cons2(X, take2(N, XS))
sel2(0, cons2(X, XS)) -> X
sel2(s1(N), cons2(X, XS)) -> sel2(N, XS)
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDP
FROM1(X) -> FROM1(s1(X))
from1(X) -> cons2(X, from1(s1(X)))
head1(cons2(X, XS)) -> X
2nd1(cons2(X, XS)) -> head1(XS)
take2(0, XS) -> nil
take2(s1(N), cons2(X, XS)) -> cons2(X, take2(N, XS))
sel2(0, cons2(X, XS)) -> X
sel2(s1(N), cons2(X, XS)) -> sel2(N, XS)